package com.atguigu.gmall.realtime.function;

import com.alibaba.fastjson.JSONObject;

/**
 * 维度关联接口
 *
 * @author lvbingbing
 * @date 2022-06-28 22:15
 */
public interface DimJoinFunction<T> {

    /**
     * 获取维度数据的 key
     *
     * @param input 流中的对象
     * @return 维度数据的 key
     */
    String getDimKey(T input);

    /**
     * 将查询出来的维度数据属性赋值给流中的对象属性
     *
     * @param input      流中的数据
     * @param dimJsonObj 查询出来的维度数据
     */
    void setDimField(T input, JSONObject dimJsonObj);
}